chore: update rust-sdks to livekit-ffi v0.12.68#735
Conversation
Updates rust-sdks submodule to include: - Add MaintainFramerateAndResolution to DegradationPreference enum (aligns with WebRTC M144) - DISABLED is deprecated, use MAINTAIN_FRAMERATE_AND_RESOLUTION instead Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
| @@ -1 +1 @@ | |||
| Subproject commit 304214e3c161a0ba036c729abf1e95a2863aa452 | |||
| Subproject commit dad794d414fda9e8c1de83af1c0f190506a15f8f | |||
There was a problem hiding this comment.
🚩 Submodule update with no visibility into downstream impact
This PR only updates the livekit-rtc/rust-sdks submodule pointer from 304214e to dad794d. Without inspecting the changes between those two commits in the submodule repository, it's not possible to determine whether the updated Rust SDK introduces breaking API changes, behavioral differences, or compatibility issues that could affect the Python bindings built on top of it. CI/build results would be the primary signal for correctness here.
Was this helpful? React with 👍 or 👎 to provide feedback.
ef30040 to
bc6b12e
Compare
| MAINTAIN_FRAMERATE = ProtoDegradationPreference.DEGRADATION_PREFERENCE_MAINTAIN_FRAMERATE | ||
| """Degrade framerate to maintain resolution.""" | ||
| MAINTAIN_RESOLUTION = ProtoDegradationPreference.DEGRADATION_PREFERENCE_MAINTAIN_RESOLUTION | ||
| """Degrade resolution to maintain framerate (drop frames to keep clarity).""" |
There was a problem hiding this comment.
🚩 DegradationPreference docstrings contradict proto-generated descriptions
The Python wrapper's docstrings for MAINTAIN_FRAMERATE and MAINTAIN_RESOLUTION (livekit-rtc/livekit/rtc/participant.py:113-116) are semantically opposite to the auto-generated proto descriptions in livekit-rtc/livekit/rtc/_proto/room_pb2.pyi:124-127. The proto says value 1 (MAINTAIN_FRAMERATE) means "Degrade framerate to maintain resolution" while the Python wrapper says "Degrade resolution to maintain framerate." After checking the standard WebRTC DegradationPreference semantics (where kMaintainFramerate = reduce resolution to maintain framerate), the Python wrapper's descriptions are correct and the proto descriptions appear to have a documentation error. This is not a runtime bug since the integer values are correctly mapped, but it could cause confusion if someone cross-references the proto stubs.
Was this helpful? React with 👍 or 👎 to provide feedback.
Add a wrapper DegradationPreference enum that matches the Rust API: - BALANCED: Balance between framerate and resolution degradation - MAINTAIN_FRAMERATE: Degrade framerate to maintain resolution - MAINTAIN_RESOLUTION: Degrade resolution to maintain framerate - MAINTAIN_FRAMERATE_AND_RESOLUTION: Maintain both, drop frames before encoding The deprecated 'Disabled' value is intentionally excluded since it has been removed from WebRTC M144 and replaced with MaintainFramerateAndResolution. Also regenerates proto files from livekit-ffi v0.12.68. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
7a6e94d to
0dc2b42
Compare
- Fix swapped docstrings for MaintainFramerate and MaintainResolution to match W3C WebRTC spec semantics - Add --format flag to publisher.py example (default: i420) for more efficient frame capture similar to Rust SDK Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Summary
Updates rust-sdks submodule to livekit-ffi v0.12.68.
Changes
MaintainFramerateAndResolutiontoDegradationPreferenceenum (aligns with WebRTC M144)DISABLEDis deprecated, useMAINTAIN_FRAMERATE_AND_RESOLUTIONinstead🤖 Generated with Claude Code